<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>GHC.Data.TrieMap</title><link href="linuwial.css" rel="stylesheet" type="text/css" title="Linuwial" /><link rel="stylesheet" type="text/css" href="quick-jump.css" /><link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=PT+Sans:400,400i,700" /><script src="haddock-bundle.min.js" async="async" type="text/javascript"></script><script type="text/x-mathjax-config">MathJax.Hub.Config({ tex2jax: { processClass: "mathjax", ignoreClass: ".*" } });</script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script></head><body><div id="package-header"><span class="caption">ghc-9.0.2: The GHC API</span><ul class="links" id="page-menu"><li><a href="src/GHC.Data.TrieMap.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe-Inferred</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">GHC.Data.TrieMap</p></div><div id="table-of-contents"><div id="contents-list"><p class="caption" onclick="window.scrollTo(0,0)">Contents</p><ul><li><a href="#g:1">Maps over <code>Maybe</code> values</a></li><li><a href="#g:2">Maps over <code>List</code> values</a></li><li><a href="#g:3">Maps over <code>Literal</code>s</a></li><li><a href="#g:4"><code>TrieMap</code> class</a></li><li><a href="#g:5">Things helpful for adding additional Instances.</a></li><li><a href="#g:6">Map for leaf compression</a></li></ul></div></div><div id="synopsis"><details id="syn"><summary>Synopsis</summary><ul class="details-toggle" data-details-id="syn"><li class="src short"><span class="keyword">data</span> <a href="#t:MaybeMap">MaybeMap</a> m a</li><li class="src short"><span class="keyword">data</span> <a href="#t:ListMap">ListMap</a> m a</li><li class="src short"><span class="keyword">type</span> <a href="#t:LiteralMap">LiteralMap</a> a = <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> <a href="GHC-Types-Literal.html#t:Literal" title="GHC.Types.Literal">Literal</a> a</li><li class="src short"><span class="keyword">class</span> <a href="#t:TrieMap">TrieMap</a> m <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:Key">Key</a> m :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a></li><li><a href="#v:emptyTM">emptyTM</a> :: m a</li><li><a href="#v:lookupTM">lookupTM</a> :: <span class="keyword">forall</span> b. <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b</li><li><a href="#v:alterTM">alterTM</a> :: <span class="keyword">forall</span> b. <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; m b -&gt; m b</li><li><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; m a -&gt; m b</li><li><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; m a -&gt; b -&gt; b</li></ul></li><li class="src short"><a href="#v:insertTM">insertTM</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; a -&gt; m a -&gt; m a</li><li class="src short"><a href="#v:deleteTM">deleteTM</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; m a -&gt; m a</li><li class="src short"><a href="#v:-62-.-62-">(&gt;.&gt;)</a> :: (a -&gt; b) -&gt; (b -&gt; c) -&gt; a -&gt; c</li><li class="src short"><a href="#v:-124--62-">(|&gt;)</a> :: a -&gt; (a -&gt; b) -&gt; b</li><li class="src short"><a href="#v:-124--62--62-">(|&gt;&gt;)</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m2 =&gt; (<a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> (m2 a) -&gt; m1 (m2 a) -&gt; m1 (m2 a)) -&gt; (m2 a -&gt; m2 a) -&gt; m1 (m2 a) -&gt; m1 (m2 a)</li><li class="src short"><span class="keyword">type</span> <a href="#t:XT">XT</a> a = <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a</li><li class="src short"><a href="#v:foldMaybe">foldMaybe</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a -&gt; b -&gt; b</li><li class="src short"><span class="keyword">data</span> <a href="#t:GenMap">GenMap</a> m a</li><li class="src short"><a href="#v:lkG">lkG</a> :: (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a</li><li class="src short"><a href="#v:xtG">xtG</a> :: (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a</li><li class="src short"><a href="#v:mapG">mapG</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b</li><li class="src short"><a href="#v:fdG">fdG</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; b -&gt; b</li><li class="src short"><a href="#v:xtList">xtList</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (<span class="keyword">forall</span> b. k -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; m b -&gt; m b) -&gt; [k] -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a</li><li class="src short"><a href="#v:lkList">lkList</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (<span class="keyword">forall</span> b. k -&gt; m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b) -&gt; [k] -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a</li></ul></details></div><div id="interface"><a href="#g:1" id="g:1"><h1>Maps over <code>Maybe</code> values</h1></a><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:MaybeMap" class="def">MaybeMap</a> m a <a href="src/GHC.Data.TrieMap.html#MaybeMap" class="link">Source</a> <a href="#t:MaybeMap" class="selflink">#</a></p><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:MaybeMap">Instances</h4><details id="i:MaybeMap" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MaybeMap:TrieMap:1"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-226" class="link">Source</a> <a href="#t:MaybeMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MaybeMap:TrieMap:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MaybeMap:Key:2"></span> <span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-227" class="link">Source</a> <a href="#t:MaybeMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MaybeMap:Key:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) = <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m)</div></details></td></tr></table></details></div></div><a href="#g:2" id="g:2"><h1>Maps over <code>List</code> values</h1></a><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ListMap" class="def">ListMap</a> m a <a href="src/GHC.Data.TrieMap.html#ListMap" class="link">Source</a> <a href="#t:ListMap" class="selflink">#</a></p><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:ListMap">Instances</h4><details id="i:ListMap" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ListMap:TrieMap:1"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-264" class="link">Source</a> <a href="#t:ListMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ListMap:TrieMap:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ListMap:Outputable:2"></span> (<a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> a) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a)</span> <a href="src/GHC.Data.TrieMap.html#line-272" class="link">Source</a> <a href="#t:ListMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ListMap:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ListMap:Key:3"></span> <span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-265" class="link">Source</a> <a href="#t:ListMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ListMap:Key:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) = [<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m]</div></details></td></tr></table></details></div></div><a href="#g:3" id="g:3"><h1>Maps over <code>Literal</code>s</h1></a><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LiteralMap" class="def">LiteralMap</a> a = <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> <a href="GHC-Types-Literal.html#t:Literal" title="GHC.Types.Literal">Literal</a> a <a href="src/GHC.Data.TrieMap.html#LiteralMap" class="link">Source</a> <a href="#t:LiteralMap" class="selflink">#</a></p></div><a href="#g:4" id="g:4"><h1><code>TrieMap</code> class</h1></a><div class="top"><p class="src"><span class="keyword">class</span> <a id="t:TrieMap" class="def">TrieMap</a> m <span class="keyword">where</span> <a href="src/GHC.Data.TrieMap.html#TrieMap" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></p><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a id="t:Key" class="def">Key</a> m :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:emptyTM" class="def">emptyTM</a> :: m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a id="v:lookupTM" class="def">lookupTM</a> :: <span class="keyword">forall</span> b. <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a id="v:alterTM" class="def">alterTM</a> :: <span class="keyword">forall</span> b. <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; m b -&gt; m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a id="v:mapTM" class="def">mapTM</a> :: (a -&gt; b) -&gt; m a -&gt; m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a id="v:foldTM" class="def">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:TrieMap">Instances</h4><details id="i:TrieMap" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:1"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a></span> <a href="src/GHC.Data.TrieMap.html#line-118" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> b -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> a -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="../containers/Data-IntMap-Strict-Internal.html#t:IntMap" title="Data.IntMap.Strict.Internal">IntMap</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:2"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a></span> <a href="src/GHC.Cmm.Dataflow.Label.html#line-131" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Cmm-Dataflow-Label.html">GHC.Cmm.Dataflow.Label</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> b -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> a -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Cmm-Dataflow-Label.html#t:LabelMap" title="GHC.Cmm.Dataflow.Label">LabelMap</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:3"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a></span> <a href="src/GHC.Core.Map.html#line-150" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Core-Map.html">GHC.Core.Map</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> b -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> a -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:CoreMap" title="GHC.Core.Map">CoreMap</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:4"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a></span> <a href="src/GHC.Core.Map.html#line-696" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Core-Map.html">GHC.Core.Map</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> b -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> a -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:LooseTypeMap" title="GHC.Core.Map">LooseTypeMap</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:5"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a></span> <a href="src/GHC.Core.Map.html#line-656" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:5"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Core-Map.html">GHC.Core.Map</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> b -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> a -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Core-Map.html#t:TypeMap" title="GHC.Core.Map">TypeMap</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:6"></span> <a href="GHC-Prelude.html#t:Ord" title="GHC.Prelude">Ord</a> k =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k)</span> <a href="src/GHC.Data.TrieMap.html#line-129" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:6"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k) -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k b -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k a -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="../containers/Data-Map-Strict.html#t:Map" title="Data.Map.Strict">Map</a> k a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:7"></span> (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-351" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:7"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:8"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-264" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:8"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:9"></span> <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-226" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:9"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:MaybeMap" title="GHC.Data.TrieMap">MaybeMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:ic:TrieMap:TrieMap:10"></span> <a href="GHC-Types-Unique.html#t:Uniquable" title="GHC.Types.Unique">Uniquable</a> key =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key)</span> <a href="src/GHC.Data.TrieMap.html#line-205" class="link">Source</a> <a href="#t:TrieMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:ic:TrieMap:TrieMap:10"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key) -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key b -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key a -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Types-Unique-DFM.html#t:UniqDFM" title="GHC.Types.Unique.DFM">UniqDFM</a> key a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:insertTM" class="def">insertTM</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; a -&gt; m a -&gt; m a <a href="src/GHC.Data.TrieMap.html#insertTM" class="link">Source</a> <a href="#v:insertTM" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:deleteTM" class="def">deleteTM</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; m a -&gt; m a <a href="src/GHC.Data.TrieMap.html#deleteTM" class="link">Source</a> <a href="#v:deleteTM" class="selflink">#</a></p></div><a href="#g:5" id="g:5"><h1>Things helpful for adding additional Instances.</h1></a><div class="top"><p class="src"><a id="v:-62-.-62-" class="def">(&gt;.&gt;)</a> :: (a -&gt; b) -&gt; (b -&gt; c) -&gt; a -&gt; c <span class="fixity">infixr 1</span><span class="rightedge"></span> <a href="src/GHC.Data.TrieMap.html#%3E.%3E" class="link">Source</a> <a href="#v:-62-.-62-" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:-124--62-" class="def">(|&gt;)</a> :: a -&gt; (a -&gt; b) -&gt; b <span class="fixity">infixr 1</span><span class="rightedge"></span> <a href="src/GHC.Data.TrieMap.html#%7C%3E" class="link">Source</a> <a href="#v:-124--62-" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:-124--62--62-" class="def">(|&gt;&gt;)</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m2 =&gt; (<a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> (m2 a) -&gt; m1 (m2 a) -&gt; m1 (m2 a)) -&gt; (m2 a -&gt; m2 a) -&gt; m1 (m2 a) -&gt; m1 (m2 a) <span class="fixity">infixr 1</span><span class="rightedge"></span> <a href="src/GHC.Data.TrieMap.html#%7C%3E%3E" class="link">Source</a> <a href="#v:-124--62--62-" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:XT" class="def">XT</a> a = <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a <a href="src/GHC.Data.TrieMap.html#XT" class="link">Source</a> <a href="#t:XT" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:foldMaybe" class="def">foldMaybe</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldMaybe" class="link">Source</a> <a href="#v:foldMaybe" class="selflink">#</a></p></div><a href="#g:6" id="g:6"><h1>Map for leaf compression</h1></a><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:GenMap" class="def">GenMap</a> m a <a href="src/GHC.Data.TrieMap.html#GenMap" class="link">Source</a> <a href="#t:GenMap" class="selflink">#</a></p><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:GenMap">Instances</h4><details id="i:GenMap" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GenMap:TrieMap:1"></span> (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-351" class="link">Source</a> <a href="#t:GenMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GenMap:TrieMap:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) <a href="src/GHC.Data.TrieMap.html#Key" class="link">Source</a> <a href="#t:Key" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:emptyTM">emptyTM</a> :: <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a <a href="src/GHC.Data.TrieMap.html#emptyTM" class="link">Source</a> <a href="#v:emptyTM" class="selflink">#</a></p><p class="src"><a href="#v:lookupTM">lookupTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b <a href="src/GHC.Data.TrieMap.html#lookupTM" class="link">Source</a> <a href="#v:lookupTM" class="selflink">#</a></p><p class="src"><a href="#v:alterTM">alterTM</a> :: <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b <a href="src/GHC.Data.TrieMap.html#alterTM" class="link">Source</a> <a href="#v:alterTM" class="selflink">#</a></p><p class="src"><a href="#v:mapTM">mapTM</a> :: (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapTM" class="link">Source</a> <a href="#v:mapTM" class="selflink">#</a></p><p class="src"><a href="#v:foldTM">foldTM</a> :: (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#foldTM" class="link">Source</a> <a href="#v:foldTM" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GenMap:Outputable:2"></span> (<a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> a, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (m a)) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a)</span> <a href="src/GHC.Data.TrieMap.html#line-345" class="link">Source</a> <a href="#t:GenMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GenMap:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GenMap:Key:3"></span> <span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m)</span> <a href="src/GHC.Data.TrieMap.html#line-352" class="link">Source</a> <a href="#t:GenMap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GenMap:Key:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Data-TrieMap.html">GHC.Data.TrieMap</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> (<a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m) = <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m</div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:lkG" class="def">lkG</a> :: (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a <a href="src/GHC.Data.TrieMap.html#lkG" class="link">Source</a> <a href="#v:lkG" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:xtG" class="def">xtG</a> :: (<a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> (<a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m), <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m) =&gt; <a href="GHC-Data-TrieMap.html#t:Key" title="GHC.Data.TrieMap">Key</a> m -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a <a href="src/GHC.Data.TrieMap.html#xtG" class="link">Source</a> <a href="#v:xtG" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:mapG" class="def">mapG</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (a -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m b <a href="src/GHC.Data.TrieMap.html#mapG" class="link">Source</a> <a href="#v:mapG" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:fdG" class="def">fdG</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (a -&gt; b -&gt; b) -&gt; <a href="GHC-Data-TrieMap.html#t:GenMap" title="GHC.Data.TrieMap">GenMap</a> m a -&gt; b -&gt; b <a href="src/GHC.Data.TrieMap.html#fdG" class="link">Source</a> <a href="#v:fdG" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:xtList" class="def">xtList</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (<span class="keyword">forall</span> b. k -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> b -&gt; m b -&gt; m b) -&gt; [k] -&gt; <a href="GHC-Data-TrieMap.html#t:XT" title="GHC.Data.TrieMap">XT</a> a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a <a href="src/GHC.Data.TrieMap.html#xtList" class="link">Source</a> <a href="#v:xtList" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:lkList" class="def">lkList</a> :: <a href="GHC-Data-TrieMap.html#t:TrieMap" title="GHC.Data.TrieMap">TrieMap</a> m =&gt; (<span class="keyword">forall</span> b. k -&gt; m b -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> b) -&gt; [k] -&gt; <a href="GHC-Data-TrieMap.html#t:ListMap" title="GHC.Data.TrieMap">ListMap</a> m a -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> a <a href="src/GHC.Data.TrieMap.html#lkList" class="link">Source</a> <a href="#v:lkList" class="selflink">#</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.25.1</p></div></body></html>